package com.feiyu.resource.entity;


import java.util.Date;
import java.io.Serializable;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * <p>
 *
 * </p>
 *
 * @author tang ming
 * @since 2021-11-30
 */
@Data
@ToString
@EqualsAndHashCode(callSuper = false)
public class Resource implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @JsonSerialize(using= ToStringSerializer.class)
    private Long id;

    /**
     * 资源所在分组
     */
    private String groupName;

    /**
     * 在分组路径
     */
    private String path;

    /**
     * 资源标题
     */
    private String title;

    /**
     * 资源名称
     */
    private String name;

    /**
     * 资源类型
     */
    private String fileType;

    /**
     * 上传者id
     */
    @JsonSerialize(using=ToStringSerializer.class)
    private Long ownerId;

    /**
     * 文件大小
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long size;

    /**
     * 分类ID
     */
    private Integer typeId;

    /**
     * 自定义标签
     */
    private String tag;


    private Integer score;
    /**
     * 所在分组
     */
    private String groupId;

    /**
     * 介绍
     */
    private String summary;

    /**
     * 喜欢次数
     */
    private Integer favourCount;

    /**
     * 收藏次数
     */
    private Integer collectCount;

    /**
     * 评论次数
     */
    private Integer commentCount;

    /**
     * 下载次数
     */
    private Integer downloadCount;

    /**
     * 上传时间
     */
    private Date uploadTime;

    /**
     * 是否删除
     */
    private Boolean deleted;

    public String getFullPath(){
        return groupName.concat("/").concat(path);
    }
}
